package com.threeti.jiayusms.domain.service.defaulttemplate;

import com.threeti.jiayusms.domain.model.defaulttemplate.DefaultCommunicationTemplate;

/**
 * @author Jay Meng
 */
public interface DefaultCommunicationTemplateUpdateService {
	/** 向本系统新增或更新默认模板(含候选者) */
  DefaultCommunicationTemplate storeDefaultTemplate(DefaultCommunicationTemplate defaultTemplate);
  
  /** 向本系统和遗留系统同时新增或更新默认模板(含候选者) */
  DefaultCommunicationTemplate storeDefaultTemplateAndtoLegacyDBAlso(DefaultCommunicationTemplate defaultTemplate, String smsorvoicekey);
	
	/** 删除本系统的默认模板(TODO 当前启用的默认模板可能不能被删除) */
	void removeDefaultTemplateBy(Long defaultTemplateId);
	
  /** 删除本系统和遗留系统的默认模板(TODO 当前启用的默认模板可能不能被删除) */	
	void removeDefaultTemplateAndLegacyDBAlsoBy(Long defaultTemplateId);
  
  /** 删除默认模板中的子模板(短信) */
  void removeSubMsgTemplateOfDefaultTemplateBy(Long subMsgTemplateId);
  
  /** 删除默认模板中的子模板(语音) */
  void removeSubVoiceTemplateOfDefaultTemplateBy(Long subVoiceTemplateId);
  
  /** 启用默认模板 */
  void enableDefaultTemplateBy(Long defaultTemplateId);
}
